package cn.dengta.webapp.user.util.spatial;

/**
 * 与特定坐标体系无依赖 的 坐标点抽象
 */
public class Coords {

	/** 经度 */
	public final double lon;
	/** 纬度 */
	public final double lat;

	/**
	 * 根据 经度和纬度 数据，构建一个与坐标系无关的坐标点
	 *
	 * @param lon 经度
	 * @param lat 纬度
	 */
	public Coords(double lon, double lat) {
		// 只保留最多 6 位小数
		final int factor = 1000000;
		this.lon = Math.floor(lon * factor) / factor;
		this.lat = Math.floor(lat * factor) / factor;
	}

	public boolean checkRange() {
		return lon >= 0 && lon <= 180 && lat >= 0 && lat <= 90;
	}

	@Override
	public String toString() {
		return "(" + lon + ", " + lat + ')';
	}

}
